import {getSession,setSession} from '../../http/storage';
// import { login,logout,getMenuList} from '@/http/user';
// import { encryption } from '@/utils/utils';
// import qs from 'qs';

const state = {
  token: getSession('token') || '',  //token
  userinfo: getSession('userinfo') ||  '', //用户信息
  menuList: getSession('menuList') || [] ,//菜单列表
};
const mutations = {
  SET_TOKEN: (state, token) => {
    state.token = token;
    setSession('token',token)
  },
  SET_USERINFO: (state, userinfo) => {
    state.userinfo = userinfo;
    setSession('userinfo',userinfo)
  },
  SET_MENULIST: (state, menuList) => {
    state.menuList = menuList;
    setSession('menuList',menuList)
  }
};
const actions = {
  // 用户登录
//   login({commit},userInfo) {
//     const user = encryption({
//       data: userInfo,
//       key: 'pigxpigxpigxpigx',
//       param: ['password']
//     })
//     let data = qs.stringify({'username': user.username, 'password': user.password})
//     let params = {
//       randomStr:userInfo.randomStr,
//       grant_type:'password'
//     }
//     return new Promise((resolve, reject) => {
//       login(params,data).then(res => {
//         commit('SET_TOKEN', res.access_token);
//         commit('SET_USERINFO', res.user_info);
//         resolve(res);
//       }).catch((error)=>{reject(error);})
//     })
//   },
//   //微信登录
//   loginByWechat({commit},code){
//     return new Promise((resolve, reject) => {
//       loginByWechat(code).then(resoult => {
//         if(resoult.code == 0){
//           let res = resoult.data
//           commit('SET_TOKEN', res.access_token);
//           commit('SET_USERINFO', res.user_info);
//           resolve(res);
//         }else{
//           reject("当前登陆用户未绑定项目,请检查")
//         }
//       }).catch((error)=>{reject(error);})
//     })
//   },
//   //获取项目菜单列表
//   getMenuList({commit,state}){
//     return new Promise((resolve, reject) => {
//       getMenuList({
//         projectId:state.projectInfo.deptId,
//         tenantId:1
//       }).then(res => {
//         let menus = []
//         res.data.map(item => {
//           menus.push(item.code)
//         })
//         console.log(menus)
//         commit('SET_MENULIST', menus)
//         resolve()
//       }).catch((error)=>{reject(error);})
//     })
//   },
//   //退出
//   logout({commit}){
//     return new Promise((resolve, reject) => {
//       logout().then(res => {
//         commit('SET_TOKEN', '');
//         commit('SET_USERINFO', null);
//         Router.push({path:'/login'})
//         resolve(res);
//       }).catch((error)=>{reject(error);})
//     })
//   },
// // UAV
//   getUavStatus({commit},obj){
//     return new Promise((resolve, reject) => {
//         commit('SET_DEVICESTATUS',obj)
//         resolve(obj);
//       }).catch((error)=>{reject(error);})
//   }
}

export default {
  namespaced: true,
  state,
  mutations,
  actions
};
